package com.zmm.study.order.dao;

import com.zmm.study.order.model.WareOrderTaskDetail;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author 900045
 * @description:
 * @name WareOrderTaskDetailDao
 * @date By 2021-10-20 17:04:26
 */
@Mapper
public interface WareOrderTaskDetailDao {
	
	
	/**
	 * 新增库存工作单详情 -- jdbc
	 * @author: 900045
	 * @date: 2021-10-20 17:05:29
	 * @throws 
	 * @param wareOrderTaskDetail: 
	 * @return: java.lang.Integer
	 **/
	Integer insertWareOrderTaskDetail(WareOrderTaskDetail wareOrderTaskDetail);

	/**
	 * 根据 详情ID 查询 库存工作单明细
	 * @author: 900045
	 * @date: 2021-10-20 17:19:07
	 * @throws 
	 * @param detailId: 
	 * @return: com.zmm.study.order.model.WareOrderTaskDetail
	 **/
	WareOrderTaskDetail getWareOrderTaskDetailByDetailId(@Param("detailId") Long detailId);

	/**
	 * 改变工作单详情的状态
	 * @author: 900045
	 * @date: 2021-10-20 17:35:13
	 * @throws 
	 * @param taskDetailId: 
	 * @param lockStatus:   
	 * @return: void
	 **/
	void updateTaskDetailById(@Param("taskDetailId") Long taskDetailId, @Param("lockStatus") Integer lockStatus);

	/**
	 * 查看详单
	 * @author: 900045
	 * @date: 2021-10-20 17:55:01
	 * @throws 
	 * @param taskId: 
	 * @param lockStatus: 
	 * @return: java.util.List<com.zmm.study.order.model.WareOrderTaskDetail>
	 **/
	List<WareOrderTaskDetail> findOrderTaskDetailListByTaskId(@Param("taskId") Long taskId, @Param("lockStatus") Integer lockStatus);

	/**
	 * 改变工作单详情状态
	 * @author: 900045
	 * @date: 2021-10-21 11:18:05
	 * @throws 
	 * @param wareOrderTaskDetail: 
	 * @return: void
	 **/
	void updateTaskDetailByDetail(WareOrderTaskDetail wareOrderTaskDetail);

	/**
	 * 根据 工作单Id 更新
	 * @author: 900045
	 * @date: 2021-10-21 11:25:22
	 * @throws 
	 * @param taskId: 
	 * @param lockStatus: 
	 * @return: void
	 **/
	void updateTaskDetailByTaskId(@Param("taskId") Long taskId, @Param("lockStatus") Integer lockStatus);
}
